package com.myBlast.server;

/**
 * This contains a number of string constants used 
 * in the web app on the server side.
 * @author Parit Bansal
 */
public class ServerConstants {
	
	public static final String projectID_str = "ProjectID";
	public static final String query_str = "QUERY";
	public static final String type_query_str = "typeofquery";
	public static final String type_db_str = "typeofdb";
	public static final String blastProgram_str = "blastprogram";
	public static final String expect_str = "EXPECT";
	public static final String filter_str = "FILTER";
	public static final String desc_str = "DESCRIPTIONS";
	public static final String alignemnts_str = "ALIGNMENTS";
	public static final String db_prefix_str = "DB_DIR_PREFIX";
	public static final String blast_Type_str = "WWW_BLAST_TYPE";
	public static final String cmd_str = "CMD";
	public static final String client_str = "CLIENT";
	public static final String service_str = "SERVICE";
	public static final String autoformat_str = "AUTO_FORMAT";
	public static final String taxid_str = "TAXID_LIST";
	public static final String program_str = "PROGRAM";
	public static final String page_str = "PAGE";
	public static final String megablast_str = "MEGABLAST";
	public static final String database_str = "DATABASE";
	
	public enum proteinBlastDatabases
	{
		nr("Non-redundant Protein Sequences (nr)","nr"),
		env_nr ("Enviornmental Samples","env_nr"),
		swissprot ("SwissProt Protein Sequence","swissprot"),
		pataa ("Patented Protein Sequence","pataa"),
		pdbaa ("Protein DataBank Proteins (pdb)","pdbaa"),
		refseq_protein ("Reference Proteins","refseq_protein");
		
		private String databaseDescription = null;
		private String databaseKey = null;
		
		private proteinBlastDatabases(String databaseDescription, String databaseKey)
		{
			this.databaseDescription = databaseDescription;
			this.databaseKey = databaseKey;
		}
		
		public String getDatabaseDescription()
		{
			return databaseDescription;
		}
		
		public String getDatabaseKey()
		{
			return databaseKey;
		}
	}
	
	
	public enum nucleotideBlastDatabases
	{
//		refseq_genomic ("",""),
//		refseq_rna ("",""),
//		env_nt ("",""),
//		est_others("",""),
//		gss("",""),
//		htgs("",""),
//		
//		private String databaseDescription = null;
//		private String databaseKey = null;
//		
//		private nucleotideBlastDatabases(String databaseDescription, String databaseKey)
//		{
//			this.databaseDescription = databaseDescription;
//			this.databaseKey = databaseKey;
//		}
//		
//		public String getDatabaseDescription()
//		{
//			return databaseDescription;
//		}
//		
//		public String getDatabaseKey()
//		{
//			return databaseKey;
//		}
	}
	
}// ServerConstants
